home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / ietf / urn / urn-archives / urn-ietf.archive.9610 / 000058_owner-urn-ietf _Mon Oct 21 13:39:55 1996.msg < prev    next >
Internet Message Format  |  1997-02-19  |  8KB

  1. Received: (from daemon@localhost) by services.bunyip.com (8.6.10/8.6.9) id NAA27465 for urn-ietf-out; Mon, 21 Oct 1996 13:39:55 -0400
  2. Received: from mocha.bunyip.com (mocha.Bunyip.Com [192.197.208.1]) by services.bunyip.com (8.6.10/8.6.9) with SMTP id NAA27460 for <urn-ietf@services.bunyip.com>; Mon, 21 Oct 1996 13:39:51 -0400
  3. Received: from josef.ifi.unizh.ch by mocha.bunyip.com with SMTP (5.65a/IDA-1.4.2b/CC-Guru-2b)
  4.         id AA21595  (mail destined for urn-ietf@services.bunyip.com); Mon, 21 Oct 96 13:39:01 -0400
  5. Received: from ifi.unizh.ch by josef.ifi.unizh.ch 
  6.           id <01070-0@josef.ifi.unizh.ch>; Mon, 21 Oct 1996 19:38:54 +0100
  7. Subject: Re: [URN] Pre release of URN Syntax document....
  8. To: jayhawk@ds.internic.net
  9. Date: Mon, 21 Oct 1996 19:38:53 +0100 (MET)
  10. Cc: urn-ietf@bunyip.com, leslie@bunyip.com, michaelm@internic.net,
  11.         rdaniel@acl.lanl.gov, paf@swip.net
  12. In-Reply-To: <9610181749.AA07976@mocha.bunyip.com> from "Ryan Moats" at Oct 18, 96 12:52:34 pm
  13. Mime-Version: 1.0
  14. Content-Type: text/plain; charset=US-ASCII
  15. Content-Transfer-Encoding: 7bit
  16. Content-Length: 6658
  17. From: Martin J Duerst <mduerst@ifi.unizh.ch>
  18. Message-Id: <"josef.ifi..310:21.09.96.18.38.55"@ifi.unizh.ch>
  19. Sender: owner-urn-ietf@services.bunyip.com
  20. Precedence: bulk
  21. Reply-To: Martin J Duerst <mduerst@ifi.unizh.ch>
  22. Errors-To: owner-urn-ietf@bunyip.com
  23.  
  24. Ryan Moats wrote:
  25.  
  26. >Well folks, we've reached the point where this is ready for the list
  27. >to scream about (semi :-) ).
  28.  
  29. Well, first a great scream of joy and congratulations that you have
  30. made it with iso10646/UTF-8. More comments on that below.
  31.  
  32.  
  33. >Internet-Draft                                                Ryan Moats
  34. >draft-ietf-urn-syntax-00.txt                                        AT&T
  35. >Expires in six months                                       October 1996
  36.  
  37. >Abstract
  38. >
  39. >   This document presents the syntax for Uniform Resource Names (URNs).
  40. >   More information on the purpose of URNs is available from [1].
  41. >
  42. >1. Syntax
  43. >
  44. >   All URNs have the following syntax:
  45. >
  46. >
  47. >   <URN> ::= ["urn:"] <NID> ":" <NSS>
  48. >
  49. >   <NID> is the Namespace IDentifier, and <NSS> is the Namespace
  50. >   Specific String.  The Namespace ID is used to determine the
  51. >   _syntactic_ interpretation of the Namespace Specific String to the
  52. >   extent of extracting the Naming Authority information (as discussed
  53. >   in [1]).
  54.  
  55.  
  56. >1.1 Namespace Identifier Syntax
  57. >
  58. >   The following is the syntax for the Namespace Identifier. To (a) be
  59. >   consistent with all potential resolution schemes and (b) not put any
  60. >   undue constraints on any potential resolution scheme, the syntax for
  61. >   the Namespace Identifier is:
  62. >
  63. >   <NID>         ::= <letter> [ <let-hyp> ]
  64. >
  65. >   <let-hyp>     ::= <letter> | "-"
  66. >
  67. >   <letter>      ::= any one of the 52 alphabetic characters A through Z
  68. >                     in upper case and a through z in lower case
  69. >
  70. >   This is slightly more restrictive that what is stated in RFC 1738 [4]
  71. >   (which allows the period "."). Further, the Namespace Identifier is
  72. >   case insensitive, so that "ISBN" and "isbn" refer to the same
  73. >   namespace.
  74.  
  75. Kind of disappointed that i18n didn't make it for NIS. But it's probably
  76. not necessary. And if it becomes necessary, we could just create a new
  77. NIS, "i" for short, and could prefix it. Or am I stretching my understanding
  78. of URN syntax too much?
  79.  
  80. >1.2 Namespace Specific String Syntax
  81. >
  82. >   Depending on the rules governing a namespace, valid identifiers in a
  83. >   namespace might contain characters that are reserved characters in
  84. >   URI syntax or non-printable ASCII characters.  To accommodate the
  85. >   largest set of valid identifiers, the NSS portion of a URN shall use
  86. >   UTF-8 representation of ISO 10646 as its character set.
  87.  
  88. This is really what I have waited for for a long time. As I wrote in
  89. a different mail, I have discussed that with many people on many
  90. occasions. It is definitely the right direction to go. But it needs
  91. a few refinements to assure it will work nicely, and to assure it
  92. won't be getting unnecessary opposition. Hopefully, these things
  93. can be integrated in this document; maybe another document is
  94. needed.
  95.  
  96. One main problem is that while the URL/URI didn't specify any
  97. character semantics, this proposal defines everything in terms
  98. of characters.
  99. For URL/URIs, it was not defined what character, or part of a
  100. character, bytes above 0x7F were denoting, nor was one even sure,
  101. after reading the specs, that an "A" in an URL was supposed to be
  102. the character "A". One only got a certain confidence in such
  103. coincidences after having a look at some actual examples.
  104. This had some advantages, as it left open any decisions for
  105. the individual protocols, and it also considered cases where
  106. the information in the URL did not have anything to do with
  107. characters (e.g. something like the data URL).
  108. So I think the spec should go more in the direction of:
  109.  
  110. - If an NSS contains characters, these should be encoded using UTF-8.
  111. - If an NSS contains something else (e.g. pure data), this can be
  112.     encoded directly using %HH.
  113. - If an NSS, for some reasons, decides to use a different encoding
  114.     for characters, this is not prohibited (but not suggested).
  115.  
  116. When the second point is introduced, the third cannot be avoided
  117. anyway, because a NSS scheme may just define that it does %HH encoding
  118. on its own, using a different character syntax, and the NSS encoding
  119. of the characters in that scheme would only trivially encode
  120. ASCII characters (with lots of "%" in it).
  121.  
  122. This will also mean that NSS are not limited to be correct UTF-8
  123. sequences.
  124.  
  125. The other big problem is equivalence. For Unicode, character equivalence
  126. is in some cases not the same as codepoint equivalence. Charecter
  127. equivalence is well defined, but there is currently no standard
  128. for normalization. This does not concern things such as case,
  129. where the user can easily distinguish lower case and upper case,
  130. but cases such as A-with-Grave, which can be encoded both as
  131. one single codepoint and as the sequence A, Grave.
  132.  
  133. Another problem that should be considered are bidirectionality
  134. for Hebrew and Arabic.
  135.  
  136. >   URN resolvers MUST be capable of accepting URNs that have been
  137. >   %encoded for either 8-bit clean or 7-bit transports.  %encoding is
  138. >   removed first, then UTF-8 decoding is performed.  URN resolvers MUST
  139. >   return identical results from ANY legally encoded form of the URN.
  140.  
  141. It would be a good idea if URN resolvers could alos care about
  142. UNicode character equivalence. But maybe some schemes would do
  143. that easier than others?
  144.  
  145. >   It should be noted that certain characters in the Namespace Specific
  146. >   String syntax may have special meaning in certain namespaces.
  147. >   Therefore, each namespace shall indicate which characters have
  148. >   special meaning and how (if possible) to encode those characters if
  149. >   used in a literal sense.
  150.  
  151. Rather a great requirement on implementors, because they have to know
  152. new things for every new namespace. But maybe it cannot be avoided.
  153. The question here is: How to escape a character beyond ASCII?
  154. Would it be possible to specify that all characters in ASCII,
  155. if in %HH form, are to be considered escaped?
  156.  
  157.  
  158. >2. Grand-fathering
  159. >
  160. >   To allow for grand-fathering of existing naming systems (as required
  161. >   by [2]), the Namespace Specific String shall be considered an "opaque
  162. >   string" in the sense of structure except as mentioned in Section 1.
  163.  
  164. Just the fact that it is considered a string of characters in all cases
  165. is somewhat restricting.
  166.  
  167. >3. Lexical Equivalence
  168. >   Lexical equivalence at the server is dependent on the namespace, and
  169. >   thus each namespace shall indicate how lexical equivalence may be
  170. >   determined by servers for URNs specifying resources in that
  171. >   namespace.
  172.  
  173. As said, some general help or suggestions for Unicode character
  174. equivalence might be in order here. This does not restrict
  175. individual namespaces to go further in declaring equivalences.
  176.  
  177.  
  178. That's it, for the moment. Looking forward to interesting discussions.
  179. Regards,    Martin.